home *** CD-ROM | disk | FTP | other *** search
/ The 640 MEG Shareware Studio 2 / The 640 Meg Shareware Studio CD-ROM Volume II (Data Express)(1993).ISO / clang / tcisam.zip / INDEX.H < prev    next >
Text File  |  1987-08-21  |  1KB  |  60 lines

  1. /*
  2.  * INDEX.H - definitions for index package.
  3.  *
  4.  *                      Copyright (C) 1987, Jim Mischel
  5.  * Modifications:
  6.  *
  7.  * 08/13/87 - jim - original coding
  8.  */
  9.  
  10. /* field types for iopen() */
  11. #define UCHAR   0x00
  12. #define SCHAR   0x01
  13. #define UINT    0x02
  14. #define SINT    0x03
  15. #define ULONG   0x04
  16. #define SLONG   0x05
  17. #define STRING  0x06
  18. #define FLOAT   0x07
  19. #define DOUBLE  0x08
  20.  
  21. /* conditions for istart() */
  22. #define START_FILE        0
  23. #define LT                1
  24. #define LE                2
  25. #define EQ                3
  26. #define GE                4
  27. #define GT                5
  28. #define END_FILE          6
  29.  
  30. /* values returned in ierrno */
  31. #define I_NODAT 0x10
  32. #define I_DATRD 0x11
  33. #define I_DATWT 0x12
  34. #define I_NOINX 0x20
  35. #define I_INXRD 0x21
  36. #define I_INXWT 0x22
  37. #define I_INVKEY 0x80
  38. #define I_NOMEM 0x81
  39. #define I_NOREC 0x82
  40.  
  41. /* global variables */
  42. #ifdef __INDEX__
  43. int ierrno;
  44. #else
  45. extern int ierrno;
  46. #endif
  47.  
  48. /* user-callable routines */
  49.  
  50. void *iopen(char *fname, unsigned recsiz, char keytyp, unsigned offset,
  51.             char dupflag, int (*cmp_rtn)());
  52. void iclose(void *db_control);
  53. int iread(void *db_control, void *destin);
  54. int istart(void *db_control, char cond, void *source);
  55. int iread_next(void *db_control, void *destin);
  56. int iread_prev(void *db_control, void *destin);
  57. int iwrite(void *db_control, void *source);
  58. int irewrite(void *db_control, void *source);
  59. int idelete(void *d, void *src);
  60.